package gestorbienraizok.inmuebles;

import java.util.LinkedList;
import static uiMain.bienRaizOk.convertirBooleano;

public class Torre {

    byte numeroDeTorre;
    byte numeroPisos;
    byte numeroAptosPorPiso;
    boolean ascensor;
    LinkedList<Apartamento> listaDeApartamentos;
    Unidad unidad;

    public Torre(byte numeroDeTorre, byte numeroPisos, byte numeroAptosPorPiso, boolean ascensor, Unidad unidad) {
        this.numeroDeTorre = numeroDeTorre;
        this.numeroPisos = numeroPisos;
        this.numeroAptosPorPiso = numeroAptosPorPiso;
        this.ascensor = ascensor;
        this.listaDeApartamentos = new LinkedList();
        this.unidad = unidad;
    }

    public byte getNumeroDeTorre() {
        return this.numeroDeTorre;
    }

    public byte getNumeroPisos() {
        return this.numeroPisos;
    }

    public byte getNumeroAptosPorPiso() {
        return this.numeroAptosPorPiso;
    }

    public boolean tieneAscensor() {
        return ascensor;
    }

    public LinkedList<Apartamento> getListaDeApartamentos() {
        return this.listaDeApartamentos;
    }
    
    public int getNumeroDeApartamentos(){
        return this.listaDeApartamentos.size();
    }

    public Unidad getUnidad() {
        return this.unidad;
    }

    public void agregarApartamento(Apartamento apartamento) {
        this.listaDeApartamentos.add(apartamento);
    }

    @Override
    public String toString() {
        String descripcion = new String();
        descripcion += "Número de la torre:      " + this.numeroDeTorre + "\n";
        descripcion += "Número de pisos:         " + this.numeroPisos + "\n";
        descripcion += "Apartamentos por piso:   " + this.numeroAptosPorPiso + "\n";
        descripcion += "Ascensor:                " + convertirBooleano(this.ascensor);        
        return descripcion;
    }
}
